package com.ruibang.glass.portal.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruibang.glass.common.domain.DictInfo;
import com.ruibang.glass.portal.domain.DictCondition;
import com.ruibang.glass.portal.entity.DictEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Auther: csz
 * @Date: 2018/8/21 09:31
 * @Description:
 */

public interface DictMapper extends BaseMapper<DictEntity> {
    /**
     * 保存
     *
     * @param dictEntity
     */
    void saveDict(DictEntity dictEntity);

    /**
     * 更新
     *
     * @param domain
     */
    void updateDict(DictEntity domain);

    /**
     * 刪除
     *
     * @param id
     */
    void deleteDict(String id);

    /**
     * 查询
     *
     * @return
     */
    List<DictEntity> getDict(String group);

    /**
     * 通过 groupName 列表 查询字典属性信息
     *
     * @return
     */
    List<DictEntity> getDictByGroupNames(List<String> groupNameList);

    List<DictEntity> getAllDict(DictCondition condition);


    DictEntity getDictByCode(@Param("codeValue") String codeValue);

    String getValueByCode(@Param("codeValue") String codeValue);

    void updateValueByCode(@Param("dict") DictInfo dictEntity);
}
